
class FirstPublishDetailModel {
  int? code;
  Data? data;
  String? message;
  String? requestNo;
  bool? successful;

  FirstPublishDetailModel({this.code, this.data, this.message, this.requestNo, this.successful});

  FirstPublishDetailModel.fromJson(Map<String, dynamic> json) {
    code = (json["code"] as num).toInt();
    data = json["data"] == null ? null : Data.fromJson(json["data"]);
    message = json["message"];
    requestNo = json["requestNo"];
    successful = json["successful"];
  }

  static List<FirstPublishDetailModel> fromList(List<Map<String, dynamic>> list) {
    return list.map(FirstPublishDetailModel.fromJson).toList();
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> _data = <String, dynamic>{};
    _data["code"] = code;
    if(data != null) {
      _data["data"] = data?.toJson();
    }
    _data["message"] = message;
    _data["requestNo"] = requestNo;
    _data["successful"] = successful;
    return _data;
  }

  FirstPublishDetailModel copyWith({
    int? code,
    Data? data,
    String? message,
    String? requestNo,
    bool? successful,
  }) => FirstPublishDetailModel(
    code: code ?? this.code,
    data: data ?? this.data,
    message: message ?? this.message,
    requestNo: requestNo ?? this.requestNo,
    successful: successful ?? this.successful,
  );
}

class Data {
  String? activityTag;
  String? collectionDesc;
  String? collectionNotice;
  String? coverImageUrl;
  String? daoHeadImageUrl;
  int? daoId;
  String? daoName;
  String? displayEndTime;
  String? displayStartTime;
  int? firstPublishGroupCount;
  double? firstPublishPrice;
  int? id;
  bool? isCanPriorityBuy;
  bool? isCanPriorityRob;
  bool? isPriorityBuy;
  bool? isPriorityRob;
  int? personalPriorityBuyCap;
  int? personalPriorityRobCap;
  int? personalPublicCap;
  String? priorityBuyEndTime;
  String? priorityBuyStartTime;
  int? priorityBuyTotal;
  String? priorityRobEndTime;
  String? priorityRobStartTime;
  int? priorityRobTotal;
  int? publicSaleCount;
  String? publicSaleEndTime;
  String? publicSaleStartTime;
  String? saleStatus;
  String? seriesName;
  int? showCount;
  int? sourceId;
  String? sourceName;

  Data({this.activityTag, this.collectionDesc, this.collectionNotice, this.coverImageUrl, this.daoHeadImageUrl, this.daoId, this.daoName, this.displayEndTime, this.displayStartTime, this.firstPublishGroupCount, this.firstPublishPrice, this.id, this.isCanPriorityBuy, this.isCanPriorityRob, this.isPriorityBuy, this.isPriorityRob, this.personalPriorityBuyCap, this.personalPriorityRobCap, this.personalPublicCap, this.priorityBuyEndTime, this.priorityBuyStartTime, this.priorityBuyTotal, this.priorityRobEndTime, this.priorityRobStartTime, this.priorityRobTotal, this.publicSaleCount, this.publicSaleEndTime, this.publicSaleStartTime, this.saleStatus, this.seriesName, this.showCount, this.sourceId, this.sourceName});

  Data.fromJson(Map<String, dynamic> json) {
    activityTag = json["activityTag"];
    collectionDesc = json["collectionDesc"];
    collectionNotice = json["collectionNotice"];
    coverImageUrl = json["coverImageUrl"];
    daoHeadImageUrl = json["daoHeadImageUrl"];
    daoId = (json["daoId"] as num).toInt();
    daoName = json["daoName"];
    displayEndTime = json["displayEndTime"];
    displayStartTime = json["displayStartTime"];
    firstPublishGroupCount = (json["firstPublishGroupCount"] as num).toInt();
    firstPublishPrice = (json["firstPublishPrice"] as num).toDouble();
    id = (json["id"] as num).toInt();
    isCanPriorityBuy = json["isCanPriorityBuy"];
    isCanPriorityRob = json["isCanPriorityRob"];
    isPriorityBuy = json["isPriorityBuy"];
    isPriorityRob = json["isPriorityRob"];
    personalPriorityBuyCap = (json["personalPriorityBuyCap"] as num).toInt();
    personalPriorityRobCap = (json["personalPriorityRobCap"] as num).toInt();
    personalPublicCap = (json["personalPublicCap"] as num).toInt();
    priorityBuyEndTime = json["priorityBuyEndTime"];
    priorityBuyStartTime = json["priorityBuyStartTime"];
    priorityBuyTotal = (json["priorityBuyTotal"] as num).toInt();
    priorityRobEndTime = json["priorityRobEndTime"];
    priorityRobStartTime = json["priorityRobStartTime"];
    priorityRobTotal = (json["priorityRobTotal"] as num).toInt();
    publicSaleCount = (json["publicSaleCount"] as num).toInt();
    publicSaleEndTime = json["publicSaleEndTime"];
    publicSaleStartTime = json["publicSaleStartTime"];
    saleStatus = json["saleStatus"];
    seriesName = json["seriesName"];
    showCount = (json["showCount"] as num).toInt();
    sourceId = (json["sourceId"] as num).toInt();
    sourceName = json["sourceName"];
  }

  static List<Data> fromList(List<Map<String, dynamic>> list) {
    return list.map(Data.fromJson).toList();
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> _data = <String, dynamic>{};
    _data["activityTag"] = activityTag;
    _data["collectionDesc"] = collectionDesc;
    _data["collectionNotice"] = collectionNotice;
    _data["coverImageUrl"] = coverImageUrl;
    _data["daoHeadImageUrl"] = daoHeadImageUrl;
    _data["daoId"] = daoId;
    _data["daoName"] = daoName;
    _data["displayEndTime"] = displayEndTime;
    _data["displayStartTime"] = displayStartTime;
    _data["firstPublishGroupCount"] = firstPublishGroupCount;
    _data["firstPublishPrice"] = firstPublishPrice;
    _data["id"] = id;
    _data["isCanPriorityBuy"] = isCanPriorityBuy;
    _data["isCanPriorityRob"] = isCanPriorityRob;
    _data["isPriorityBuy"] = isPriorityBuy;
    _data["isPriorityRob"] = isPriorityRob;
    _data["personalPriorityBuyCap"] = personalPriorityBuyCap;
    _data["personalPriorityRobCap"] = personalPriorityRobCap;
    _data["personalPublicCap"] = personalPublicCap;
    _data["priorityBuyEndTime"] = priorityBuyEndTime;
    _data["priorityBuyStartTime"] = priorityBuyStartTime;
    _data["priorityBuyTotal"] = priorityBuyTotal;
    _data["priorityRobEndTime"] = priorityRobEndTime;
    _data["priorityRobStartTime"] = priorityRobStartTime;
    _data["priorityRobTotal"] = priorityRobTotal;
    _data["publicSaleCount"] = publicSaleCount;
    _data["publicSaleEndTime"] = publicSaleEndTime;
    _data["publicSaleStartTime"] = publicSaleStartTime;
    _data["saleStatus"] = saleStatus;
    _data["seriesName"] = seriesName;
    _data["showCount"] = showCount;
    _data["sourceId"] = sourceId;
    _data["sourceName"] = sourceName;
    return _data;
  }

  Data copyWith({
    String? activityTag,
    String? collectionDesc,
    String? collectionNotice,
    String? coverImageUrl,
    String? daoHeadImageUrl,
    int? daoId,
    String? daoName,
    String? displayEndTime,
    String? displayStartTime,
    int? firstPublishGroupCount,
    double? firstPublishPrice,
    int? id,
    bool? isCanPriorityBuy,
    bool? isCanPriorityRob,
    bool? isPriorityBuy,
    bool? isPriorityRob,
    int? personalPriorityBuyCap,
    int? personalPriorityRobCap,
    int? personalPublicCap,
    String? priorityBuyEndTime,
    String? priorityBuyStartTime,
    int? priorityBuyTotal,
    String? priorityRobEndTime,
    String? priorityRobStartTime,
    int? priorityRobTotal,
    int? publicSaleCount,
    String? publicSaleEndTime,
    String? publicSaleStartTime,
    String? saleStatus,
    String? seriesName,
    int? showCount,
    int? sourceId,
    String? sourceName,
  }) => Data(
    activityTag: activityTag ?? this.activityTag,
    collectionDesc: collectionDesc ?? this.collectionDesc,
    collectionNotice: collectionNotice ?? this.collectionNotice,
    coverImageUrl: coverImageUrl ?? this.coverImageUrl,
    daoHeadImageUrl: daoHeadImageUrl ?? this.daoHeadImageUrl,
    daoId: daoId ?? this.daoId,
    daoName: daoName ?? this.daoName,
    displayEndTime: displayEndTime ?? this.displayEndTime,
    displayStartTime: displayStartTime ?? this.displayStartTime,
    firstPublishGroupCount: firstPublishGroupCount ?? this.firstPublishGroupCount,
    firstPublishPrice: firstPublishPrice ?? this.firstPublishPrice,
    id: id ?? this.id,
    isCanPriorityBuy: isCanPriorityBuy ?? this.isCanPriorityBuy,
    isCanPriorityRob: isCanPriorityRob ?? this.isCanPriorityRob,
    isPriorityBuy: isPriorityBuy ?? this.isPriorityBuy,
    isPriorityRob: isPriorityRob ?? this.isPriorityRob,
    personalPriorityBuyCap: personalPriorityBuyCap ?? this.personalPriorityBuyCap,
    personalPriorityRobCap: personalPriorityRobCap ?? this.personalPriorityRobCap,
    personalPublicCap: personalPublicCap ?? this.personalPublicCap,
    priorityBuyEndTime: priorityBuyEndTime ?? this.priorityBuyEndTime,
    priorityBuyStartTime: priorityBuyStartTime ?? this.priorityBuyStartTime,
    priorityBuyTotal: priorityBuyTotal ?? this.priorityBuyTotal,
    priorityRobEndTime: priorityRobEndTime ?? this.priorityRobEndTime,
    priorityRobStartTime: priorityRobStartTime ?? this.priorityRobStartTime,
    priorityRobTotal: priorityRobTotal ?? this.priorityRobTotal,
    publicSaleCount: publicSaleCount ?? this.publicSaleCount,
    publicSaleEndTime: publicSaleEndTime ?? this.publicSaleEndTime,
    publicSaleStartTime: publicSaleStartTime ?? this.publicSaleStartTime,
    saleStatus: saleStatus ?? this.saleStatus,
    seriesName: seriesName ?? this.seriesName,
    showCount: showCount ?? this.showCount,
    sourceId: sourceId ?? this.sourceId,
    sourceName: sourceName ?? this.sourceName,
  );
}